<template>
<view class='uni-icon' :style='style' />
</template>

<script setup lang="ts">
  import { IconProps } from '../props'
  import { useIconfont } from '../useIconfont'
  import { computed } from 'vue'
  const props = defineProps(IconProps)
  const {
  colors,
  svgSize,
  quot,
  isStr,
  } = useIconfont(props)
  const style = computed(() => {
      return `background-image: url(${quot.value}data:image/svg+xml, %3Csvg viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg' width='${svgSize.value}px' height='${svgSize.value}px'%3E%3Cpath d='M203 528.7c-25.4-6.2-34.6-21-27.7-44.4l26.3-98.3 32.8 8.8-5.2 19.3 99.2 26.6 10.8-40.3-137.8-36.9 7.9-29.4 170.6 45.7-26.6 99.2-131.9-35.4-11 41.2c-3.6 11.1 0.3 17.8 11.7 20.2l79.8 21.4c13.1 4.7 21.8 1.4 26.1-10.1 0.6-2.2 2.2-6 4.8-11.3 2.4-6.6 4.3-11.5 5.7-14.7 10.9 6.5 20.7 12.2 29.7 17-5.3 13-10.6 24.8-15.8 35.4-7.9 15.9-23.2 20.5-46 13.8L203 528.7z m0 0M446.2 483.1c-8-8.1-16.4-15.2-25-21.1 18.2-18.5 32.9-38.9 44.3-61.1l28.5 14.8c-3.6 6.8-7.1 13.1-10.5 18.8l30.3 8.1c1.2-4.5 3.2-10.9 6-19.1 2-7.3 3.4-12.6 4.3-16l31.9 8.6c-3.8 14-7.2 25.7-10.3 35.1l68.1 18.2-7.9 29.4-68.9-18.4-8 26.7 81.5 21.8-7.9 29.4-78.2-20.9c3.4 25.5 25.6 49.2 66.6 71-12.6 11-21.4 19.2-26.4 24.5-39-24.9-60.9-50.5-65.8-77.1-16.2 20.3-48.6 32.3-97.1 36.1-0.8-1.4-1.7-3.8-2.6-7-5.7-12.3-10-21-12.9-26 52.5-0.9 85.1-11.7 97.8-32.3l-81.5-21.8 7.9-29.4 86.6 23.2c0.6-2.2 1.6-6.2 3.2-11.8 2.4-6.6 4-11.5 4.9-14.9L464.8 461c-5.7 7.5-11.8 14.9-18.6 22.1z m0 0M727 576.3c-0.8-1.4-2-3.8-3.5-7.2-8.3-16-14.9-28.3-19.8-36.8l22.5-10.2 16.2 26.9c16.3-16 32.1-39.1 47.4-69.3l27.4 11.9c-4.1 8.5-8.8 17.2-14.2 25.9l56.3 15.1-7.7 28.6-13.4-3.6c-12.9 32.6-27.9 58-44.8 76.3 7.2 13.4 17.4 26.9 30.5 40.6-7 5.9-15 13.4-24 22.4-12.7-15.4-22.6-29.8-29.9-43.1-13.7 8.3-30.8 16.4-51.5 24l-11.2-25.5-10 7.2-18.5-32c-14.2 8.2-32.6 16.5-55.3 24.8-2.9-14-5.2-24.2-7.1-30.7 19.9-4.9 36-11.1 48.2-18.6L647 571.3l23.2-12.7 17.3 26.2c6.4-6.1 13-13.6 19.6-22.7l21 19.1c-1.7 1.9-3.9 4.4-6.5 7.3-4.5 5.4-10.8 12.4-19.1 21 7.5 12.2 14.2 23.3 19.9 33.3 14-5.2 26.2-11.6 36.6-19-3.4-14.1-4.9-30.1-4.3-48l-10.7 9.7-2.4-17.8-14.6 8.6z m-77.9-11.8l-11.6-23.8c14.9-8.6 29.3-18.6 43.1-29.9l17.2 19.9c-9.1 7.2-22 16-38.6 26.6-4.4 3-7.8 5.4-10.1 7.2z m5.5-64.3l7.2-26.9 37.8 10.1c-0.1-4.2-0.2-10.5-0.3-19 0.2-2.9 0.1-5.1-0.1-6.3l32.8 5.2-0.5 28.7 31.1 8.3-7.2 26.9-100.8-27z m128.5 102c11.2-12.6 20.9-29.8 29.2-51.6l-27.7-7.4-1.3 1.5c-2.7 23.2-2.7 42.4-0.2 57.5z m0 0' fill='${(isStr.value ? colors.value : colors.value[0]) || 'rgb(39,38,54)'}' /%3E%3Cpath d='M512 279.2c76.7 0 144.8 37.1 187.2 94.3l29.7 8C684.6 308 604 258.9 512 258.9c-44.5 0-86.2 11.5-122.5 31.6l29.6 7.9c28.5-12.4 59.9-19.2 92.9-19.2zM664.9 266l16.3 13.2 5-19.7 18.2-10.6-18.2-10.6-5-19.7-16.3 13.2-21.3-1.6 8.1 18.8-8.1 18.8 21.3-1.8z m-282-44.2l-16.7-11.6-3.6 20.6-17.1 12.8 18.5 8.8 6.1 19.5 15.1-15.1 20.9-0.7-9.1-18.2 6.8-19.9-20.9 3.8z m156.6-28.5l-12.4-16.2-9.7 18.5-20.2 7 14.9 14-0.1 20.5 18.9-9.8L551 233l-3.2-20.1 12.5-16.9-20.8-2.7zM766 320.5l-17.5-12.2-2.5 20.3-16.5 12 19.1 9.4 7.3 19.6 14.3-14.5 21.1 0.1-10.3-18.3 5.7-19.6-20.7 3.2z m228 153L113.9 237.6c-21.6-5.8-43.8 7-49.6 28.6L1.4 501c-5.8 21.6 7 43.8 28.6 49.6l880.1 235.8c21.6 5.8 43.8-7 49.6-28.6l62.9-234.7c5.8-21.7-7-43.9-28.6-49.6z m6.4 54.1l-57.6 215.1c-4.3 16.2-21 25.8-37.2 21.5L45 533.6c-16.2-4.3-25.8-21-21.5-37.2l57.6-215.1c4.3-16.2 21-25.8 37.2-21.5L979 490.4c16.2 4.3 25.8 21 21.4 37.2zM512 147.5c168.7 0 310.6 114.6 352.1 270.2l22.4 6C846.6 253.8 694.1 127.3 512 127.3c-110.4 0-209.9 46.5-280.1 121l22.4 6c65.9-66 157.1-106.8 257.7-106.8z m92.9 578.1C576.4 738 545 744.8 512 744.8c-76.7 0-144.8-37.1-187.2-94.4l-29.7-8C339.4 716 420 765.1 512 765.1c44.5 0 86.2-11.5 122.5-31.6l-29.6-7.9z m-217.2 42l-16.1-13.1-5 19.7-18 10.6 18 10.6 5 19.7 16.1-13.1 21.1 1.6-8.1-18.7 8.1-18.7-21.1 1.4zM511.9 830l12.3 16.1 9.7-18.5 20-6.9-14.8-14 0.1-20.4-18.8 9.8-20-5.7 3.2 20.1-12.4 16.9 20.7 2.6zM256 702.7l16.5 13.3 3.9-20 17.2-10.8-18.3-10.7-5.9-20-15.2 13.4-20.8-1.5 8.9 19-7 19.1 20.7-1.8z m256 173.8c-168.7 0-310.5-114.6-352.1-270.1l-22.4-6C177.4 770.2 329.9 896.7 512 896.7c110.4 0 209.9-46.5 280.1-121l-22.4-6c-65.9 66-157.1 106.8-257.7 106.8z m146.4-74.3l16.6 11.6 3.6-20.5 17-12.7-18.3-8.8-6.1-19.5-14.9 15.1-20.7 0.7 9.1 18.2-6.7 19.9 20.4-4z m0 0' fill='${(isStr.value ? colors.value : colors.value[1]) || 'rgb(39,38,54)'}' /%3E%3C/svg%3E${quot.value}); width: ${svgSize.value}px; height: ${svgSize.value}px;`
  })
</script>
